package com.tjec.project.projectWorkbench.service;

import com.tjec.project.projectWorkbench.domain.BmsReportNo;
import java.util.List;

/**
 * 报告号Service接口
 * 
 * @author tjec
 * @date 2020-07-20
 */
public interface IBmsReportNoService 
{
    /**
     * 查询报告号
     * 
     * @param guid 报告号ID
     * @return 报告号
     */
    public BmsReportNo selectBmsReportNoByGuid(String guid);

    /**
     * 查询报告号列表
     * 
     * @param bmsReportNo 报告号
     * @return 报告号集合
     */
    public List<BmsReportNo> selectBmsReportNoList(BmsReportNo bmsReportNo);

    /**
     * 新增报告号
     * 
     * @param bmsReportNo 报告号
     * @return 结果
     */
    public String insertBmsReportNo(BmsReportNo bmsReportNo);

    /**
     * 修改报告号
     * 
     * @param bmsReportNo 报告号
     * @return 结果
     */
    public int updateBmsReportNo(BmsReportNo bmsReportNo);

    /**
     * 批量删除报告号
     * 
     * @param guids 需要删除的报告号ID
     * @return 结果
     */
    public int deleteBmsReportNoByGuids(String[] guids);

    /**
     * 删除报告号信息
     * 
     * @param guid 报告号ID
     * @return 结果
     */
    public int deleteBmsReportNoByGuid(String guid);
    
    /**
     * 检查本业务下本报告类别是否已存在报告号
     * @param bmsReportNo
     * @return
     */
    public Integer checkBmsReportNo(BmsReportNo bmsReportNo);
    
    /**
     * 成果校审获取报告类型和报告号
     * @param bmsReportNo
     * @return
     */
    public List<BmsReportNo> selectReportTypeAndNoList(BmsReportNo bmsReportNo);

    /**
     * 修改报告号
     *
     * @param bmsReportNo 报告号
     * @return 结果
     */
    public int updateBmsReportNoByReportNo(BmsReportNo bmsReportNo);
    
    /**
     * 根据业务id获取咨询和造价报告号
     * @param businessId 业务id
     * @return
     */
    public List<BmsReportNo> selectReportsByBusinessId(String businessId);
}
